package com.canaan.business.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.canaan.common.annotation.Excel;
import com.canaan.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * 出库单对象 wms_out_stock_order
 *
 * @author ruoyi
 * @date 2023-02-03
 */
@Data
@ApiModel(description = "wms_out_stock_order")
public class WmsOutStockOrderExport4Vo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** ID */
    @ApiModelProperty("id")
    private Long id;

    /** 单据编号 */
    @Excel(name = "单据编号")
    @ApiModelProperty("单据编号")
    private String no;

    /** 单据类型 1销售单 */
    @ApiModelProperty("单据类型")
    private Integer orderType;

    /** 单据状态 1新建 2进行中 3完成 4取消 */
    @Excel(name = "状态", dictType = "invoice_order_status")
    @ApiModelProperty("单据状态 1新建 2进行中 3完成 4取消")
    private Integer orderStatus;

    /** 出库原因 */
    @Excel(name = "出库原因")
    @ApiModelProperty("出库原因")
    private String cause;

    /** 需求总数 */
    @Excel(name = "需求总数")
    @ApiModelProperty("需求总数")
    private Long totalOrderQty;

    /** 已拣货总数 */
    @Excel(name = "已拣货总数")
    @ApiModelProperty("已拣货总数")
    private Long totalActualQty;

    /** 备注 */
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    private String remark;

    /** 完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("完成时间")
    private Date completeTime;

    /** 是否删除：1是 0否 */
    @ApiModelProperty("订单总数")
    private String delFlag;

    /** 排序 */
    @ApiModelProperty("排序")
    private Integer sort;


    /** 物料编号 */
    @Excel(name = "物料编号")
    @ApiModelProperty("物料编号")
    private String productNo;

    /** 物料名称 */
    @Excel(name = "物料名称")
    @ApiModelProperty("物料名称")
    private String productName;

    /** 需求数量 */
    @Excel(name = "需求数量")
    @ApiModelProperty("需求数量")
    private Long orderQty;

    /** 已拣货数量 */
    @Excel(name = "已拣货数量")
    @ApiModelProperty("已拣货数量")
    private Long pickingQty;

    /** 物料单位 */
    @Excel(name = "单位")
    @ApiModelProperty("物料单位")
    private String unit;



    /** 推荐库位 */
    @Excel(name = "推荐库位")
    @ApiModelProperty("推荐库位")
    private String locations;

}
